package org.iks.feign.service.user;

import io.github.taikonaut3.virtue.config.annotation.Config;
import io.github.taikonaut3.virtue.config.annotation.RemoteCaller;
import io.github.taikonaut3.virtue.rpc.virtue.config.VirtueCall;
import org.iks.common.pojo.user.UserInfoVo;

import java.util.List;
import java.util.Set;

import static io.github.taikonaut3.virtue.common.constant.Components.Serialize.JSON;

/**
 * @Author WenBo Zhou
 * @Date 2024/3/11 15:35
 */
@RemoteCaller("xim-user")
public interface UserRemoteCaller {

    @VirtueCall(service = "userRemoteService", callMethod = "queryUserInfo")
    @Config(serialize = JSON)
    UserInfoVo queryUserInfo(String account);

    @VirtueCall(service = "userRemoteService", callMethod = "queryUserInfoBatch")
    @Config( serialize = JSON)
    List<UserInfoVo> queryUserInfoBatch(Set<String> accounts);
}
